Open-world Sofware: Specification, Verification, and beyond Dissertation Committee
نویسنده
چکیده
Open-world software represents a new class of software, which exhibits new features that often demand for rethinking and extending the traditional methodologies and the accompanying methods and techniques. Open-world systems are built by composing heterogeneous, third-party components, whose behavior and interactions cannot be fully controlled or predicted; moreover, the environment they interact with is characterized by frequent, unexpected, and welcome changes. In this thesis we deal with a particular class of open-world software, represented by service-based applications (SBAs). We focus on three specific aspects related to the development and provisioning of SBAs: specification, verification, and reputation management. With respect to these aspects, we provide methods and techniques that are i) suitable to deal with aspects such as change, evolution, and reliance on thirdparties, and ii) able to improve the overall quality of the systems they are applied to. More specifically, concerning specification, we report on the findings of a study that analyzed requirements specifications of SBAs developed in research settings and in industrial settings. These findings have then driven the design of SOLOIST, a language used to specify the interactions of SBAs. Regarding verification, our contribution is twofold; we propose: i) a technique for automatically generating the behavioral interfaces of the partner services of a service composition, by decomposing the requirements specification of the composite service; ii) a framework for the definition of verification procedures (encoded as synthesis of semantic attributes associated with a grammar) that are made incremental using an approach based on incremental parsing and attributes evaluation techniques; Finally, as for reputation management, we present a reputation-aware service execution infrastructure, which manages the reputation of services used by composite SBAs in an automated and transparent manner.
منابع مشابه
Open-world Software: Specification, Verification and Beyond
Open-world software systems are built by composing heterogeneous, third-party components, whose behavior and interactions cannot be fully controlled or predicted; moreover, the environment they interact with is characterized by frequent, unexpected, and welcome changes. This class of software exhibits new features that often demand for rethinking and extending the traditional methodologies and ...
متن کاملSeSFJava: A Framework for Design and Assertion-Testing Of Concurrent Systems
Title of dissertation: SeSFJava: A FRAMEWORK FOR DESIGN AND ASSERTION-TESTING OF CONCURRENT SYSTEMS Tamer Elsharnouby, Doctor of Philosophy, 2005 Dissertation directed by: Professor A. Udaya Shankar Department of Computer Science Many elegant formalisms have been developed for specifying and reasoning about concurrent systems. However, these formalisms have not been widely used by developers an...
متن کاملA model for specification, composition and verification of access control policies and its application to web services
Despite significant advances in the access control domain, requirements of new computational environments like web services still raise new challenges. Lack of appropriate method for specification of access control policies (ACPs), composition, verification and analysis of them have all made the access control in the composition of web services a complicated problem. In this paper, a new indepe...
متن کاملWeb Service Choreography Verification Using Z Formal Specification
Web Service Choreography Description Language (WS-CDL) describes and orchestrates the services interactions among multiple participants. WS-CDL verification is essential since the interactions would lead to mismatches. Existing works verify the messages ordering, the flow of messages, and the expected results from collaborations. In this paper, we present a Z specification of WS-CDL. Besides ve...
متن کاملJava Memory Model Aware Sofware Verification
The Java Memory Model (JMM) provides a semantics of Java multithreading for any implementation platform. The JMM is defined in a declarative fashion with an allowed program execution being defined in terms of existence of “commit sequences” (roughly, the order in which actions in the execution are committed). In this work, we develop an operational approximation of the JMM. The immediate motiva...
متن کامل